package com.ruoyi.shopping.service.impl;

import com.ruoyi.shopping.domain.CommodityCollect;
import com.ruoyi.shopping.mapper.CommodityCollectMapper;
import com.ruoyi.shopping.service.ICommodityCollectService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * 商品收藏管理Service业务层处理
 * 
 * @author fxy
 * @date 2024-08-14
 */
@Service
public class CommodityCollectServiceImpl implements ICommodityCollectService 
{
    @Autowired
    private CommodityCollectMapper commodityCollectMapper;

    /**
     * 查询商品收藏管理
     * 
     * @param id 商品收藏管理主键
     * @return 商品收藏管理
     */
    @Override
    public CommodityCollect selectCommodityCollectById(Long id)
    {
        return commodityCollectMapper.selectCommodityCollectById(id);
    }

    /**
     * 查询商品收藏管理列表
     * 
     * @param commodityCollect 商品收藏管理
     * @return 商品收藏管理
     */
    @Override
    public List<CommodityCollect> selectCommodityCollectList(CommodityCollect commodityCollect)
    {
        return commodityCollectMapper.selectCommodityCollectList(commodityCollect);
    }

    /**
     * 新增商品收藏管理
     * 
     * @param commodityCollect 商品收藏管理
     * @return 结果
     */
    @Override
    public int insertCommodityCollect(CommodityCollect commodityCollect)
    {
        return commodityCollectMapper.insertCommodityCollect(commodityCollect);
    }

    /**
     * 修改商品收藏管理
     * 
     * @param commodityCollect 商品收藏管理
     * @return 结果
     */
    @Override
    public int updateCommodityCollect(CommodityCollect commodityCollect)
    {
        return commodityCollectMapper.updateCommodityCollect(commodityCollect);
    }

    /**
     * 批量删除商品收藏管理
     * 
     * @param ids 需要删除的商品收藏管理主键
     * @return 结果
     */
    @Override
    public int deleteCommodityCollectByIds(Long[] ids)
    {
        return commodityCollectMapper.deleteCommodityCollectByIds(ids);
    }

    @Override
    public int deleteCommodityCollect(CommodityCollect commodityCollect) {
        return commodityCollectMapper.deleteCommodityCollect(commodityCollect);
    }

    @Override
    public boolean queryByCCId(com.ruoyi.shopping.domain.CommodityCollect goodsCollect) {
        return commodityCollectMapper.queryByCCId(goodsCollect);
    }

//    @Override
//    Boolean CommodityCollect queryByCCId(CommodityCollect goodsCollect) {
//    CommodityCollect collect = commodityCollectMapper.queryByCCId(goodsCollect);
//    if(collect>0){
//        return true;
//    }
//    return false;
//    }

    /**
     * 删除商品收藏管理信息
     * 
     * @param id 商品收藏管理主键
     * @return 结果
     */
    @Override
    public int deleteCommodityCollectById(Long id)
    {
        return commodityCollectMapper.deleteCommodityCollectById(id);
    }

    @Override
    public int deleteCommodityCollectByCargoIdAndCommodityId(Long cargoUserId, Long commodityId) {
        Map<String, Object> params = new HashMap<>();
        params.put("cargoUserId", cargoUserId);
        params.put("commodityId", commodityId);
        return commodityCollectMapper.deleteCommodityCollectByCargoIdAndCommodityId(params);
    }

    @Override
    public List<CommodityCollect> selectCommodityCollectsBycargoUserId(Long cargoUserId) {
        List<CommodityCollect> commodityCollects = commodityCollectMapper.selectCommodityCollectsBycargoUserId(cargoUserId);
        System.out.println("commodityCollects = " + commodityCollects);
        return commodityCollects;
    }
}
